//package com.ruoyi.web.config;
//
//
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.security.config.annotation.web.builders.HttpSecurity;
//import org.springframework.security.config.http.SessionCreationPolicy;
//import org.springframework.security.oauth2.config.annotation.web.configuration.ResourceServerConfigurerAdapter;
//import org.springframework.security.oauth2.config.annotation.web.configurers.ResourceServerSecurityConfigurer;
//import org.springframework.security.oauth2.provider.token.RemoteTokenServices;
//
//@Configuration
//public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
//
//
//    /**
//     * tokenServices 我们配置了一个 RemoteTokenServices 的实例，
//     * 这是因为资源服务器和授权服务器是分开的，资源服务器和授权服务器是放在一起的，就不需要配置
//     * RemoteTokenServices 了。
//     */
//    @Bean
//    RemoteTokenServices tokenServices() {
//        RemoteTokenServices services = new RemoteTokenServices();
//        services.setCheckTokenEndpointUrl("http://localhost:9998/oauth/check_token");
//        services.setClientId("yLBv6UPJc1");
//        services.setClientSecret("4HA6fMozXn");
//        return services;
//    }
//
//    /**
//     * RemoteTokenServices 中我们配置了 access_token
//     * 的校验地址、client_id、client_secret 这三个信息，当用户来资源服务器请求资源时，
//     * 会携带上一个 access_token，通过这里的配置，就能够校验出 token 是否正确等
//     */
//    @Override
//    public void configure(ResourceServerSecurityConfigurer resources) throws Exception {
//        resources.resourceId("res1").tokenServices(tokenServices());
//    }
//
//    /**
//     * 最后配置一下资源的拦截规则，这就是 Spring Security 中的基本写法，我就不再赘述。
//     */
//    @Override
//    public void configure(HttpSecurity http) throws Exception {
//        http.authorizeRequests()
//            .antMatchers("/**").access("#oauth2.hasScope('all')")
//            .and().csrf().disable()
//            .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);//关闭session方式 因为我们是基于token
//
////            .antMatchers("/admin/**").hasRole("admin")
////            .anyRequest().authenticated().and().cors();
//
//
//    }
//}
